import { ref, onUnmounted } from 'vue';

export default function useTime() {

    const formatCurrentDate = () => {
        const date = new Date();
        const year = date.getFullYear().toString().padStart(4, '0');
        const month = (date.getMonth() + 1).toString().padStart(2, '0'); // 月份从0开始，所以需要+1  
        const day = date.getDate().toString().padStart(2, '0');
        const hours = date.getHours().toString().padStart(2, '0');
        const minutes = date.getMinutes().toString().padStart(2, '0');
        const seconds = date.getSeconds().toString().padStart(2, '0');
        return `${year}.${month}.${day} ${hours}:${minutes}:${seconds}`;
    };
    const formattedTime = ref(formatCurrentDate());

    const updateTime = () => {
        formattedTime.value = formatCurrentDate();
    };

    // 初始调用一次，以便立即显示当前时间  
    updateTime();

    // 使用 setInterval 每秒更新一次时间  
    const intervalId = setInterval(updateTime, 1000);

    // 在组件卸载时清除定时器  
    onUnmounted(() => {
        clearInterval(intervalId);
    });

    // 格式化当前日期为 "YYYYMMDD HH:MM:SS" 格式的字符串  


    return formattedTime;
}